package com.irdstudio.apicenter.console.util;

import java.io.File;

import com.irdstudio.apicenter.console.startup.MacmsRoot;

/**
 * MACMS系统目录辅助类
 * 
 * @author zs.ligm
 * @version 1.0
 * @date 2015-06-29
 */
public class MacmsPathUtil {

	/**
	 * 获取APP工程根目录
	 * 
	 * @param appId
	 * @return
	 */
	public static String getMacmsAppPrjPath(String appId) {
		return mkdirFile("appprj", appId);
	}

	/**
	 * 获取APP资源所在目录
	 * 
	 * @param appId
	 * @return
	 */
	public static String getMacmsAppResPath(String appId) {
		return mkdirFile("appres", appId);
	}

	/**
	 * 获取MACMS系统工作空间所在目录 通常用作系统本身的临时用途(如生成文件之类)
	 * 
	 * @param appId
	 * @return
	 */
	public static String getMacmsTmpPath(String appId) {
		return MacmsRoot.getMacmsPathService().getMacmsWorkspacePath().concat(
				"/tmp");
	}

	/**
	 * 获取MACMS系统工作空间模板文件所在目录
	 * 
	 * @param appId
	 * @return
	 */
	public static String getMacmsTemplatePath() {
		return mkdirFile("template", "");
	}

	/**
	 * 资源路径获取与创建
	 * 
	 * @param fileName
	 *            文件夹名称
	 * @return
	 */
	public static String mkdirFile(String dirName, String fileName) {
		String filepath = MacmsRoot.getMacmsPathService()
				.getMacmsWorkspacePath().concat("/").concat(dirName)
				.concat("/").concat(fileName);

		File file = new File(filepath);
		// 如果文件夹不存在则创建
		if (!file.exists() && !file.isDirectory()) {
			System.out.println("文件不存在");
			file.mkdir();
		}
		return filepath;
	}

	/**
	 * 删除指定路径的文件
	 * 
	 * @param filename
	 */
	public static boolean deleteFile(String filename) {
		File file = new File(filename);
		return file.delete();
	}

}
